// pages/vv/vv.js
const app = getApp();
var url = app.globalData.url;
Page({

  /**
   * 页面的初始数据
   */
  data: {
    startX: 0, //开始坐标
    startY: 0,
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    const userid = app.globalData.userid
    //系统消息
    var that = this;
    wx.request({
      url: url+'getUserCollectsByUserId',
      data: {
        userId:userid
      },
      header: {
        "Content-Type": "application/json"
      },
      success: function (res) {
        console.log(res.data.object)
        that.setData({
          system: res.data.object
        })
      }
    })
    isTouchMove: false //默认全隐藏删除
   
  },
  detail:function(e){

    const goodsId = e.currentTarget.dataset.goodsid
    wx.navigateTo({
      url: '../../commodityDetail/commodityDetail?goodsId='+goodsId,
      success: function(res) {},
      fail: function(res) {},
      complete: function(res) {},
    })
  },
  // 系统消息删除

  //手指触摸动作开始 记录起点X坐标
  touchstart: function (e) {
    //开始触摸时 重置所有删除
    this.data.system.forEach(function (v, i) {
      if (v.isTouchMove)//只操作为true的
        v.isTouchMove = false;
    })
    this.setData({
      startX: e.changedTouches[0].clientX,
      startY: e.changedTouches[0].clientY,
      system: this.data.system
    })
  },
  //滑动事件处理
  touchmove: function (e) {
    var that = this,
      index = e.currentTarget.dataset.index,//当前索引
      startX = that.data.startX,//开始X坐标
      startY = that.data.startY,//开始Y坐标
      touchMoveX = e.changedTouches[0].clientX,//滑动变化坐标
      touchMoveY = e.changedTouches[0].clientY,//滑动变化坐标
      //获取滑动角度
      angle = that.angle({ X: startX, Y: startY }, { X: touchMoveX, Y: touchMoveY });
    that.data.system.forEach(function (v, i) {
      v.isTouchMove = false
      //滑动超过30度角 return
      if (Math.abs(angle) > 30) return;
      if (i == index) {
        if (touchMoveX > startX) //右滑
          v.isTouchMove = false
        else //左滑
          v.isTouchMove = true
      }
    })
    //更新数据
    that.setData({
      system: that.data.system
    })
  },
  /**
   * 计算滑动角度
   * @param {Object} start 起点坐标
   * @param {Object} end 终点坐标
   */
  angle: function (start, end) {
    var _X = end.X - start.X,
      _Y = end.Y - start.Y
    //返回角度 /Math.atan()返回数字的反正切值
    return 360 * Math.atan(_Y / _X) / (2 * Math.PI);
  },
  //删除事件
  del: function (e) {
    var that = this;
    var index = e.target.dataset.index;
    var system = this.data.system;
    var msgid = e.currentTarget.dataset.id;
    app.globalData.recid = msgid;
    console.log(msgid);
    wx.showModal({
      title: '提示',
      content: '是否删除',
      showCancel: true,
      success: function (res) {
        if (res.confirm) {
          var id = e.currentTarget.dataset.id;
          console.log(id);
          wx.request({
            url: url+'removeGoodsCollect',
            data: {
              id: id
            },
            header: {
              "Content-Type": "application/json"
            },
            success: function (res) {
              console.log(res.data.object)
            }
          });
          system.splice(index, 1);
          that.setData({
            system: system
          });
        } else {
          initdata(that);
        }
      },
    })
  }
})